package com.otitan.la.forest.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.otitan.la.forest.system.dto.DownloadZipDTO;
import com.otitan.la.forest.system.dto.FileDTO;
import com.otitan.la.forest.system.entity.FileInfoEntity;
import com.otitan.la.forest.system.dto.FileInfoDTO;
import com.otitan.webapp.framework.basepro.model.DataResult;
import org.springframework.validation.BindingResult;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 *  
 *
 * @author jiacs
 * @email xxx
 * @date 2020-10-15 09:22:53
 */
public interface FileInfoService extends IService<FileInfoEntity> {
    /**
     * 新增
     * @return
     */
    DataResult add(List<FileInfoEntity> fileDtoList);

    /**
     * 批量删除
     * @return
     */
    DataResult batchDelete(List<String> ids);

    /**
     * 根据业务ID删除
     * @return
     */
    DataResult batchDeleteByBusiId(List<String> ids);

    /**
     * 根据ID文件删除
     * @return
     */
    DataResult batchDeleteById(List<String> ids);


    /**
     * 修改
     * @return
     */
    DataResult editor(FileInfoEntity fileInfo, BindingResult bindingResult);

//    /**
//     * 列表查询（分页）
//     * @return
//     */
//    DataResult findPageData(long page, long size, FileInfoDTO fileInfo);

    /**
     * 根据ID查询
     * @return
     */
    DataResult findByFileById(String id);


   /**
     * 文件上传
     * @author Sunke
     * @param [file]
     * @return Result
     * @exception
     * @date 2020/10/15 0015 09:39
     */
//    DataResult upload(MultipartFile file);

    /**
    * 批量下载
    * @author Sunke
    * @param [response, dto]
    * @return void
    * @exception
    * @date 2020/10/15 0015 11:43
    */
//    void downloadZip(HttpServletResponse response, DownloadZipDTO dto);

}

